250 FOR J = 0 TO 7:VL%(J,I) = VL%(J,I) +V: NEXT : NEXT I: GOSUB 1510
260 & HOME : INVERSE : PRINT TAB( 13)"O T H E L L O" TAB( 39): NORMAL : PRINT :PR$ = "Do you want instructions": GOSUB 1080: IF A$ = "Y" OR A$ = CHR$(121) THEN GOSUB 1470
270 REM SEE WHO WILL PLAY
280 VTAB 3: PRINT : & CLEAR P: PRINT "How many players (1 or 2): ";
290 GET A$:NP = VAL(A$): IF NP <1 OR NP >2 THEN 290
300 PRINT A$: PRINT : IF NP = 1 THEN 330
310 FOR I = 1 TO 2: PRINT "Name of player #"I": ";: & INPUT (N$(I),10): NEXT
320 GOTO 360
330 PRINT "Your name: ";: & INPUT (N$(1),10)
340 N$(2) = "APPLE"
350 REM SET UP INITIAL BOARD
360 FOR I = 1 TO 8: FOR J = 1 TO 8:BD(I,J) = 0: NEXT J,I
370 BD(4,4) = WH:BD(4,5) = BL
380 BD(5,4) = BL:BD(5,5) = WH
390 GOSUB 1390:SK = 0
400 GOSUB 1430: FOR R = 4 TO 5: FOR C = 4 TO 5:PIECE = BD(R,C): GOSUB 1460: NEXT : NEXT : GOSUB 1440
770 PRINT CHR$(4)"PR#0": PRINT CHR$(4)"IN#0": TEXT : HOME : END
780 REM FLASH CURSOR AND SEE IF BUTTON PRESSED
790 GOSUB 1050
800 A = BD(R,C):PIECE = 4 *(A = BL) +3 *(A = MT): GOSUB 1460: IF R < >ROW OR C < >COL THEN A = BD(ROW,COL):PIECE = A *(A = WH OR A = BL) +5 *(A = MT):A = R:B = C:R = ROW:C = COL:ROW = A:COL = B: GOSUB 1460:R = A:C = B
810 X = PEEK(49249):Y = PEEK(49250)
820 IF X >127 OR Y >127 THEN 860
830 A = PEEK(49152):K = PEEK(49168): IF A = 141 THEN CH = 0: RETURN
840 GOTO 790
850 REM SEE IF HE CAN GO THERE
860 R1 = R:C1 = C: IF BD(R1,C1) < >MT THEN 890
870 GOSUB 1180: IF CH = 0 THEN BD(R1,C1) = MT: GOTO 890
880 RETURN
890 GOSUB 1440: VTAB 11: HTAB 1: INVERSE : PRINT " IMPROPER MOVE ": NORMAL : FOR I = 1 TO 1000: NEXT : & HOME :A = PL: GOSUB 1060: GOTO 810: REM 3 SPACES BEFORE IMPROPER
900 REM COUNT FLIPS
910 CH = 0:RM = 0:CM = 0:MC = -1:O = 0
920 FOR R1 = LR TO HR
930 FOR C1 = LC TO HC
940 IF BD(R1,C1) < >MT THEN 990
950 GOSUB 1120
960 IF CH >0 THEN CH = CH +VL%(R1 -1,C1 -1)
970 IF CH = MC THEN O = O +1: IF RND(1) <1/O THEN RM = R1:CM = C1
980 IF CH >MC THEN RM = R1:CM = C1:MC = CH
990 NEXT C1
1000 NEXT R1
1010 IF MC >0 THEN R1 = RM:C1 = CM:R = R1:C = C1: GOSUB 1180
1480 PRINT " The object of OTHELLO is to own themost pieces at the end of the game. You gain pieces by flanking rows of your opponent's pieces with your own and 'flipping' them to become your ownpieces."
1490 PRINT : PRINT " Use the game paddles (or joystick) to move the '+' around the screen. When the '+' is in the square where you want to move, press either game button. If the move is illegal, the"
1500 PRINT "'+' will reappear and you will have tomove somewhere else. If you have no move at all, press <RETURN>."
1510 VTAB 22: HTAB 9: INVERSE : PRINT "PRESS <RETURN> TO CONTINUE";: NORMAL
1520 IF PEEK(49152) <128 THEN 1520
1530 POKE 49168,0: RETURN
1540 ER = PEEK(222):EL = PEEK(219) *256 + PEEK(218)
1550 TEXT : HOME : VTAB 7: PRINT : PRINT CHR$(4)"CLOSE"
1560 IF ER = 6 THEN PRINT "FILE NOT FOUND": GOTO 1610
1570 IF ER = 8 THEN PRINT "I/O ERROR": GOTO 1600
1580 IF ER = 16 THEN PRINT "SYNTAX ERROR IN LINE "EL: GOTO 1600
1590 PRINT "UNANTICIPATED ERROR IN LINE "EL
1600 CALL -3288: VTAB 23: PRINT "<RETURN> TO RESTART, <ESC> TO QUIT";: GET CH$: PRINT CH$: ON CH$ < > CHR$(27) GOTO 100: TEXT : END
1610 CALL -3288: IF F$ = "" THEN 1600
1620 PRINT : PRINT "THE FILE '"F$"' IS NOT ON THIS DISK.": PRINT "INSERT THE DISK WITH '"F$"'": PRINT : PRINT "AND PRESS <RETURN> ";